package string

import "strings"

func selectorMax(arr []string) string {
	length := len(arr)
	if length <= 1 {
		return arr[0]
	}
	max := arr[0]
	for i := 0; i < length; i++ {
		if strings.Compare(arr[i], max) > 0 {
			max = arr[i]
		}
		/*if arr[i] > max {
			max = arr[i]
		}*/
	}
	return max
}

func SelectSort(arr []string, sort bool) []string {
	length := len(arr)
	if length <= 1 {
		return arr
	}

	for i := 0; i < length-1; i++ { //只剩一个元素时不需要在循环挑选
		min := i //标记索引
		for j := i + 1; j < length; j++ {
			if sort {
				if strings.Compare(arr[min], arr[j]) > 0 {
					arr[min], arr[j] = arr[j], arr[min]
				}
				/*if arr[min] > arr[j] {
					arr[min], arr[j] = arr[j], arr[min]
				}*/
			} else {
				if strings.Compare(arr[min], arr[j]) < 0 {
					arr[min], arr[j] = arr[j], arr[min]
				}
				/*if arr[min] < arr[j] {
					arr[min], arr[j] = arr[j], arr[min]
				}*/
			}

		}
	}
	return arr
}
